Theoretical Computer Science / Higher Order Thinking / Mathematical Sciences / Computer Model / Pattern Matching / Algebraic Specification / Strong Normalization / Abstract Data Type / Data Type / Functional Language / Algebraic Specification / Strong Normalization / Abstract Data Type / Data Type / Functional Language